ããªãŒãã¥ãŒã®ã¢ã¯ã»ã·ããªãã£ã«é¢ããå æ¬çã¬ã€ããARIAããŒã«ãããŒããŒãæäœããã¹ããã©ã¯ãã£ã¹ãã¯ãã¹ãã©ãŠã¶äºææ§ã解説ããããè¯ããŠãŒã¶ãŒäœéšãå®çŸããŸãã
ããªãŒãã¥ãŒïŒéå±€ããŒã¿ããã²ãŒã·ã§ã³ã®ã¢ã¯ã»ã·ããªãã£
ããªãŒãã¥ãŒã¯ãéå±€ããŒã¿ã衚瀺ããããã®éèŠãªUIã³ã³ããŒãã³ãã§ãããã¡ã€ã«ã·ã¹ãã ãçµç¹å³ããŠã§ããµã€ãã®ã¡ãã¥ãŒãªã©ã®è€éãªæ§é ãããŠãŒã¶ãŒãçŽæçã«ããã²ãŒãã§ããããã«ããŸããããããå®è£ ãäžååãªããªãŒãã¥ãŒã¯ãç¹ã«ã¹ã¯ãªãŒã³ãªãŒããŒãããŒããŒãæäœãªã©ã®æ¯æŽæè¡ã«äŸåããé害ãæã€ãŠãŒã¶ãŒã«ãšã£ãŠãé倧ãªã¢ã¯ã»ã·ããªãã£ã®éå£ãšãªãåŸãŸãããã®èšäºã§ã¯ãã¢ã¯ã»ã·ãã«ãªããªãŒãã¥ãŒãèšèšã»å®è£ ããããã®å æ¬çãªã¬ã€ããæäŸãããã¹ãŠã®ãŠãŒã¶ãŒã«ããžãã£ããªãŠãŒã¶ãŒäœéšãä¿èšŒããŸãã
ããªãŒãã¥ãŒã®æ§é ãçè§£ãã
ããªãŒãã¥ãŒã¯ãããŒã¿ãéå±€çã§å±é/æãããã¿ãå¯èœãªåœ¢åŒã§è¡šç€ºããŸããããªãŒå ã®åããŒãã¯åããŒããæã€ããšãã§ãããã©ã³ãïŒæïŒããµããã©ã³ããäœæããŸããæäžäœã®ããŒãã¯ã«ãŒãããŒããšåŒã°ããŸããã¢ã¯ã»ã·ããªãã£ã®èæ ®äºé ã«å ¥ãåã«ããã®åºæ¬çãªæ§é ãçè§£ããããšãäžå¯æ¬ ã§ãã
以äžã«ãäžè¬çãªããªãŒãã¥ãŒã®èŠçŽ ã®å èš³ã瀺ããŸãïŒ
- ããªãŒ (Tree): ããªãŒæ§é å šäœãä¿æããå æ¬çãªã³ã³ããèŠçŽ ã
- ããªãŒã¢ã€ãã (Treeitem): ããªãŒå ã®åäžããŒãã衚ããŸãããã©ã³ãïŒå±é/æãããã¿å¯èœïŒãŸãã¯ãªãŒãïŒåãªãïŒã®ããããã«ãªããŸãã
- ã°ã«ãŒã (Group): (ä»»æ) 芪ããªãŒã¢ã€ãã å ã®åããªãŒã¢ã€ãã ãèŠèŠçã«ã°ã«ãŒãåããã³ã³ããã
- ãã°ã©ãŒ/ééã¢ã€ã³ã³: ãŠãŒã¶ãŒããã©ã³ããå±éãŸãã¯æããããããšãå¯èœã«ããèŠèŠçãªã€ã³ãžã±ãŒã¿ïŒäŸïŒãã©ã¹ãŸãã¯ãã€ãã¹èšå·ãç¢å°ïŒã
- ã©ãã« (Label): åããªãŒã¢ã€ãã ã«è¡šç€ºãããããã¹ãã
ARIAããŒã«ãšå±æ§ã®éèŠæ§
Accessible Rich Internet Applications (ARIA)ã¯ãHTMLèŠçŽ ã«æå³çãªæå³ã远å ããæ¯æŽæè¡ãçè§£ã§ããããã«ããããã®äžé£ã®å±æ§ã§ããããªãŒãã¥ãŒãæ§ç¯ããéãARIAããŒã«ãšå±æ§ã¯ãããªãŒã®æ§é ãšåäœãã¹ã¯ãªãŒã³ãªãŒããŒã«äŒããããã«äžå¯æ¬ ã§ãã
å¿ é ã®ARIAããŒã«:
role="tree"
: ããªãŒå šäœã衚ãã³ã³ããèŠçŽ ã«é©çšãããŸããããã«ããããã®èŠçŽ ãéå±€çãªãªã¹ããå«ãã§ããããšãæ¯æŽæè¡ã«äŒããŸããrole="treeitem"
: ããªãŒã®åããŒãã«é©çšãããŸããããã«ãããåããŒããããªãŒå ã®ã¢ã€ãã ã§ããããšãèå¥ãããŸããrole="group"
: åããªãŒã¢ã€ãã ãèŠèŠçã«ã°ã«ãŒãåããã³ã³ããèŠçŽ ã«é©çšãããŸããåžžã«å¿ èŠãšããããã§ã¯ãããŸããããã»ãã³ãã£ã¯ã¹ãåäžãããããšãã§ããŸãã
äž»èŠãªARIA屿§:
aria-expanded="true|false"
: åãæã€ããªãŒã¢ã€ãã ã«é©çšãããŸãããã©ã³ããçŸåšå±éãããŠããã (true
) æããããŸããŠããã (false
) ã瀺ããŸãããŠãŒã¶ãŒãããŒããå±éãŸãã¯æããããéã«ãJavaScriptã䜿çšããŠãã®å±æ§ãåçã«æŽæ°ããŸããaria-selected="true|false"
: ããŒããçŸåšéžæãããŠãããã©ããã瀺ãããã«ããªãŒã¢ã€ãã ã«é©çšãããŸããäžåºŠã«éžæãããããŒãã¯1ã€ã ãã§ããã¹ãã§ãïŒã¢ããªã±ãŒã·ã§ã³ãè€æ°éžæãå¿ èŠãšããå Žåã¯ãrole="tree"
èŠçŽ ã«aria-multiselectable="true"
ã䜿çšããŸãïŒãaria-label="[ã©ãã«ããã¹ã]"
ãŸãã¯aria-labelledby="[ã©ãã«èŠçŽ ã®ID]"
: ããªãŒãŸãã¯åã ã®ããªãŒã¢ã€ãã ã«èª¬æçãªã©ãã«ãæäŸããŸããã©ãã«ãèŠèŠçã«ååšããªãå Žåã¯aria-label
ã䜿çšãããã以å€ã®å Žåã¯aria-labelledby
ã䜿çšããŠããªãŒã¢ã€ãã ããã®èŠèŠçãªã©ãã«ã«é¢é£ä»ããŸããtabindex="0"
: æåã«ãã©ãŒã«ã¹ãããããªãŒã¢ã€ãã ïŒéåžžã¯æåã®ãã®ïŒã«é©çšãããŸããä»ã®ãã¹ãŠã®ããªãŒã¢ã€ãã ã«ã¯ããã©ãŒã«ã¹ããããŸã§ïŒäŸïŒããŒããŒãããã²ãŒã·ã§ã³ãéããŠïŒtabindex="-1"
ã䜿çšããŸããããã«ãããé©åãªããŒããŒãããã²ãŒã·ã§ã³ãããŒãä¿èšŒãããŸãã
ARIAå®è£ ã®äŸ:
以äžã¯ãARIA屿§ã䜿çšããŠããªãŒãã¥ãŒãæ§é åããåºæ¬çãªäŸã§ãïŒ
<ul role="tree" aria-label="File System">
<li role="treeitem" aria-expanded="true" aria-selected="false" tabindex="0">
<span>Root Folder</span>
<ul role="group">
<li role="treeitem" aria-expanded="false" aria-selected="false" tabindex="-1">
<span>Folder 1</span>
<ul role="group">
<li role="treeitem" aria-selected="false" tabindex="-1"><span>File 1.txt</span></li>
<li role="treeitem" aria-selected="false" tabindex="-1"><span>File 2.txt</span></li>
</ul>
</li>
<li role="treeitem" aria-selected="false" tabindex="-1"><span>Folder 2</span></li>
</ul>
</li>
</ul>
ããŒããŒãããã²ãŒã·ã§ã³
ããŒããŒãããã²ãŒã·ã§ã³ã¯ãããŠã¹ã䜿çšã§ããªããŠãŒã¶ãŒã«ãšã£ãŠæãéèŠã§ããé©åã«èšèšãããããªãŒãã¥ãŒã¯ãããŒããŒãã®ã¿ã§å®å šã«æäœå¯èœã§ããã¹ãã§ãã以äžã«æšæºçãªããŒããŒãæäœã瀺ããŸãïŒ
- äžç¢å°ããŒ: ããªãŒå ã®åã®ããŒãã«ãã©ãŒã«ã¹ãç§»åããŸãã
- äžç¢å°ããŒ: ããªãŒå ã®æ¬¡ã®ããŒãã«ãã©ãŒã«ã¹ãç§»åããŸãã
- å·Šç¢å°ããŒ:
- ããŒããå±éãããŠããå ŽåãããŒããæãããã¿ãŸãã
- ããŒããæããããŸããŠãããåããªãå Žåããã©ãŒã«ã¹ãããŒãã®èŠªã«ç§»åããŸãã
- å³ç¢å°ããŒ:
- ããŒããæããããŸããŠããå ŽåãããŒããå±éããŸãã
- ããŒããå±éãããŠããå Žåããã©ãŒã«ã¹ãæåã®åäŸã«ç§»åããŸãã
- HomeããŒ: ããªãŒå ã®æåã®ããŒãã«ãã©ãŒã«ã¹ãç§»åããŸãã
- EndããŒ: ããªãŒå ã®æåŸã«è¡šç€ºãããŠããããŒãã«ãã©ãŒã«ã¹ãç§»åããŸãã
- ã¹ããŒã¹ããŒãŸãã¯EnterããŒ: ãã©ãŒã«ã¹ãããŠããããŒããéžæããŸãïŒéžæããµããŒããããŠããå ŽåïŒã
- æåå ¥å (æåãŸãã¯æ°å): å ¥åãããæåã§å§ãŸã次ã®ããŒãã«ãã©ãŒã«ã¹ãç§»åããŸããåŸç¶ã®ããŒå ¥åããšã«æ€çŽ¢ãç¶ããŸãã
- ãã©ã¹ã㌠(+): çŸåšãã©ãŒã«ã¹ãããŠããããŒããå±éããŸãïŒæããããŸããŠããå Žåã®å³ç¢å°ããŒãšåçïŒã
- ãã€ãã¹ã㌠(-): çŸåšãã©ãŒã«ã¹ãããŠããããŒããæãããã¿ãŸãïŒå±éãããŠããå Žåã®å·Šç¢å°ããŒãšåçïŒã
- ã¢ã¹ã¿ãªã¹ã¯ã㌠(*): çŸåšã®ã¬ãã«ã®ãã¹ãŠã®ããŒããå±éããŸãïŒäžè¬çã«ãµããŒããããŠããããã§ã¯ãããŸããããå€ãã®å Žåæçã§ãïŒã
ããŒããŒãããã²ãŒã·ã§ã³ã®ããã®JavaScriptå®è£ :
ããŒããŒãã€ãã³ããåŠçããããã«å¿ããŠãã©ãŒã«ã¹ãæŽæ°ããã«ã¯JavaScriptãå¿ èŠã§ãã以äžã«ç°¡ç¥åãããäŸã瀺ããŸãïŒ
const tree = document.querySelector('[role="tree"]');
const treeitems = document.querySelectorAll('[role="treeitem"]');
tree.addEventListener('keydown', (event) => {
const focusedElement = document.activeElement;
let nextElement;
switch (event.key) {
case 'ArrowUp':
event.preventDefault(); // ããŒãžã®ã¹ã¯ããŒã«ã鲿¢
// åã®ããªãŒã¢ã€ãã ãèŠã€ããããžãã¯ïŒDOMã®ãã©ããŒã¹ãå¿
èŠïŒ
// ...
nextElement = findPreviousTreeitem(focusedElement);
break;
case 'ArrowDown':
event.preventDefault();
// 次ã®ããªãŒã¢ã€ãã ãèŠã€ããããžãã¯
// ...
nextElement = findNextTreeitem(focusedElement);
break;
case 'ArrowLeft':
event.preventDefault();
if (focusedElement.getAttribute('aria-expanded') === 'true') {
// ããŒããæãããã
focusedElement.setAttribute('aria-expanded', 'false');
} else {
// 芪ã«ãã©ãŒã«ã¹ãç§»å
nextElement = findParentTreeitem(focusedElement);
}
break;
case 'ArrowRight':
event.preventDefault();
if (focusedElement.getAttribute('aria-expanded') === 'false') {
// ããŒããå±é
focusedElement.setAttribute('aria-expanded', 'true');
} else {
// æåã®åäŸã«ãã©ãŒã«ã¹ãç§»å
nextElement = findFirstChildTreeitem(focusedElement);
}
break;
case 'Home':
event.preventDefault();
nextElement = treeitems[0];
break;
case 'End':
event.preventDefault();
nextElement = treeitems[treeitems.length - 1];
break;
case ' ': // ã¹ããŒã¹ããŒ
case 'Enter':
event.preventDefault();
// ãã©ãŒã«ã¹ãããããŒããéžæããããžãã¯
selectNode(focusedElement);
break;
default:
// æåå
¥åã«ããããã²ãŒã·ã§ã³ïŒãã®æåã§å§ãŸãããŒããžïŒãåŠç
break;
}
if (nextElement) {
focusedElement.setAttribute('tabindex', '-1');
nextElement.setAttribute('tabindex', '0');
nextElement.focus();
}
});
ããŒããŒãããã²ãŒã·ã§ã³å®è£ ã«é¢ããéèŠãªèæ ®äºé :
- ãã©ãŒã«ã¹ç®¡ç: äžåºŠã«
tabindex="0"
ãæã€ããªãŒã¢ã€ãã ã1ã€ã ãã§ããããšãåžžã«ç¢ºèªããŠãã ããããã©ãŒã«ã¹ãç§»åããéã¯ãããã«å¿ããŠtabindex
屿§ãæŽæ°ããŸãã - DOMãã©ããŒãµã«: DOMãå¹ççã«ãã©ããŒã¹ããŠã次ãšåã®ããªãŒã¢ã€ãã ã芪ããŒããåããŒããèŠã€ããŸãããã®ããã»ã¹ãç°¡çŽ åããããã«ãŠãŒãã£ãªãã£é¢æ°ã®äœ¿çšãæ€èšããŠãã ããã
- ã€ãã³ãã®é²æ¢: ç¢å°ããŒãåŠçããéã«ããã©ãŠã¶ãããã©ã«ãã®ã¢ã¯ã·ã§ã³ïŒäŸïŒã¹ã¯ããŒã«ïŒãå®è¡ããã®ãé²ãããã«
event.preventDefault()
ã䜿çšããŸãã - æåå ¥å: æåå ¥åãåŠçããããžãã¯ãå®è£ ãããŠãŒã¶ãŒãç¹å®ã®æåã§å§ãŸãããŒãã«ãã°ããç§»åã§ããããã«ããŸããæåŸã®ããŒæŒäžããã®æéãä¿åããŠãæ€çŽ¢æååããã€ã¯ãªã¢ãã¹ãããæ±ºå®ããŸãã
ããžã¥ã¢ã«ãã¶ã€ã³ãšã¢ã¯ã»ã·ããªãã£
ããžã¥ã¢ã«ãã¶ã€ã³ã¯ãããªãŒãã¥ãŒã®ãŠãŒã¶ããªãã£ãšã¢ã¯ã»ã·ããªãã£ã«ãããŠéèŠãªåœ¹å²ãæãããŸãã以äžã«ããã€ãã®ã¬ã€ãã©ã€ã³ã瀺ããŸãïŒ
- æç¢ºãªèŠèŠçéå±€: ã€ã³ãã³ããèŠèŠçãªæãããïŒäŸïŒãã©ã«ããšãã¡ã€ã«ã§ç°ãªãã¢ã€ã³ã³ã䜿çšïŒãçšããŠãããªãŒã®éå±€ãæç¢ºã«ç€ºããŸãã
- ååãªè²ã®ã³ã³ãã©ã¹ã: ããã¹ããšèæ¯ãããã³ããªãŒãã¥ãŒã®ç°ãªãèŠçŽ éã®è²ã®ã³ã³ãã©ã¹ããååã«ç¢ºä¿ããŸããWebAIM Contrast Checkerã®ãããªããŒã«ã䜿çšããŠã³ã³ãã©ã¹ãæ¯ã確èªããŸãã
- ãã©ãŒã«ã¹ã®è¡šç€º: çŸåšãã©ãŒã«ã¹ãããŠããããªãŒã¢ã€ãã ã«å¯ŸããŠãæç¢ºã§ç®ã«èŠãããã©ãŒã«ã¹ã€ã³ãžã±ãŒã¿ãæäŸããŸããããã¯ããŒããŒããŠãŒã¶ãŒã«ãšã£ãŠäžå¯æ¬ ã§ããè²ã ãã«é Œãããå¢çç·ãã¢ãŠãã©ã€ã³ããŸãã¯èæ¯è²ã®å€æŽã®äœ¿çšãæ€èšããŠãã ããã
- å±é/æãããã¿ã€ã³ãžã±ãŒã¿: å±é/æãããã¿ã€ã³ãžã±ãŒã¿ã«ã¯ãæç¢ºã§çè§£ããããã¢ã€ã³ã³ïŒäŸïŒãã©ã¹/ãã€ãã¹èšå·ãç¢å°ïŒã䜿çšããŸãããããã®ã¢ã€ã³ã³ãååãªã³ã³ãã©ã¹ããæã¡ãç°¡åã«ã¯ãªãã¯ã§ãã倧ããã§ããããšã確èªããŠãã ããã
- æ å ±äŒéã«è²ã®ã¿ã䜿çšããªã: ããªãŒã¢ã€ãã ã®ç¶æ ïŒäŸïŒéžæãå±éããšã©ãŒïŒã瀺ãããã«è²ã ãã«é Œããªãã§ãã ãããããã¹ãã©ãã«ãã¢ã€ã³ã³ãªã©ã代æ¿ã®èŠèŠçãªæããããæäŸããŸãã
ã¹ã¯ãªãŒã³ãªãŒããŒã«é¢ããèæ ®äºé
ã¹ã¯ãªãŒã³ãªãŒããŒã®ãŠãŒã¶ãŒã¯ãããªãŒãã¥ãŒãçè§£ãæäœããããã«ARIA屿§ãšããŒããŒãããã²ãŒã·ã§ã³ã«äŸåããŸãã以äžã¯ãã¹ã¯ãªãŒã³ãªãŒããŒã®ã¢ã¯ã»ã·ããªãã£ã«é¢ããäž»èŠãªèæ ®äºé ã§ãïŒ
- 説æçãªã©ãã«:
aria-label
ãŸãã¯aria-labelledby
ã䜿çšããŠãããªãŒããã³åã ã®ããªãŒã¢ã€ãã ã«èª¬æçãªã©ãã«ãæäŸããŸãããããã®ã©ãã«ã¯ç°¡æœã§æçã§ããã¹ãã§ãã - ç¶æ
ã®éç¥: ç¶æ
ã®å€åïŒäŸïŒããŒãã®å±é/æãããã¿ãããŒãã®éžæïŒãã¹ã¯ãªãŒã³ãªãŒããŒã«ãã£ãŠé©åã«èªã¿äžããããããšã確èªããŸããããã¯ã
aria-expanded
ããã³aria-selected
屿§ãæ£ããæŽæ°ããããšã§å®çŸãããŸãã - éå±€ã®éç¥: ã¹ã¯ãªãŒã³ãªãŒããŒã¯ãéå±€å ã®åããŒãã®ã¬ãã«ãèªã¿äžããã¹ãã§ãïŒäŸïŒãã¬ãã«2ããã©ã«ã1ãïŒãããã¯ãARIAããŒã«ãæ£ããå®è£ ãããŠããã°ãã»ãšãã©ã®ã¹ã¯ãªãŒã³ãªãŒããŒã§èªåçã«åŠçãããŸãã
- ããŒããŒãããã²ãŒã·ã§ã³ã®äžè²«æ§: ããŒããŒãããã²ãŒã·ã§ã³ãç°ãªããã©ãŠã¶ãã¹ã¯ãªãŒã³ãªãŒããŒéã§äžè²«æ§ããããäºæž¬å¯èœã§ããããšã確èªããŸããè€æ°ã®ã¹ã¯ãªãŒã³ãªãŒããŒïŒäŸïŒNVDAãJAWSãVoiceOverïŒã§ããªãŒãã¥ãŒããã¹ãããäžäžèŽãç¹å®ããŠè§£æ±ºããŸãã
- ããã°ã¬ãã·ããšã³ãã³ã¹ã¡ã³ã: JavaScriptãç¡å¹ã«ãªã£ãŠããå Žåã§ããããªãŒãã¥ãŒã¯æ©èœãäœäžããç¶æ ã§ãã£ãŠãã¢ã¯ã»ã¹å¯èœã§ããã¹ãã§ããã»ãã³ãã£ãã¯ãªHTMLïŒäŸïŒãã¹ãããããªã¹ãïŒã䜿çšããŠãJavaScriptããªããŠãåºæ¬çãªã¬ãã«ã®ã¢ã¯ã»ã·ããªãã£ãæäŸããããšãæ€èšããŠãã ããã
ã¯ãã¹ãã©ãŠã¶äºææ§
ã¢ã¯ã»ã·ããªãã£ã¯ãç°ãªããã©ãŠã¶ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã éã§äžè²«ããŠããå¿ èŠããããŸãã以äžã®ç°å¢ã§ããªãŒãã¥ãŒã培åºçã«ãã¹ãããŠãã ããïŒ
- ãã¹ã¯ããããã©ãŠã¶: Chrome, Firefox, Safari, Edge
- ã¢ãã€ã«ãã©ãŠã¶: Chrome (Androidããã³iOS), Safari (iOS)
- ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã : Windows, macOS, Linux, Android, iOS
- ã¹ã¯ãªãŒã³ãªãŒããŒ: NVDA (Windows), JAWS (Windows), VoiceOver (macOSããã³iOS)
ãã©ãŠã¶ã®éçºè ããŒã«ã䜿çšããŠãARIA屿§ãšããŒããŒãã®åäœãæ€æ»ããŸããäžäžèŽãã¬ã³ããªã³ã°ã®åé¡ã«æ³šæããŠãã ããã
ãã¹ããšæ€èšŒ
宿çãªãã¹ãã¯ãããªãŒãã¥ãŒã®ã¢ã¯ã»ã·ããªãã£ãä¿èšŒããããã«äžå¯æ¬ ã§ãã以äžã«ããã€ãã®ãã¹ãæ¹æ³ã瀺ããŸãïŒ
- æåãã¹ã: ã¹ã¯ãªãŒã³ãªãŒããŒãšããŒããŒãã䜿çšããŠããªãŒãã¥ãŒãæäœãããã¹ãŠã®æ©èœãã¢ã¯ã»ã¹å¯èœã§ããããšã確èªããŸãã
- èªåãã¹ã: ã¢ã¯ã»ã·ããªãã£ãã¹ãããŒã«ïŒäŸïŒaxe DevTools, WAVEïŒã䜿çšããŠãæœåšçãªã¢ã¯ã»ã·ããªãã£ã®åé¡ãç¹å®ããŸãã
- ãŠãŒã¶ãŒãã¹ã: é害ãæã€ãŠãŒã¶ãŒããã¹ãããã»ã¹ã«åå ãããããªãŒãã¥ãŒã®ã¢ã¯ã»ã·ããªãã£ã«é¢ããå®éã®ãã£ãŒãããã¯ãåŸãŸãã
- WCAGæºæ : Web Content Accessibility Guidelines (WCAG) 2.1 ã¬ãã«AAãæºããããšãç®æããŸããWCAGã¯ããŠã§ãã³ã³ãã³ããããã¢ã¯ã»ã·ãã«ã«ããããã®åœéçã«èªç¥ãããäžé£ã®ã¬ã€ãã©ã€ã³ãæäŸããŸãã
ã¢ã¯ã»ã·ãã«ãªããªãŒãã¥ãŒã®ããã®ãã¹ããã©ã¯ãã£ã¹
ã¢ã¯ã»ã·ãã«ãªããªãŒãã¥ãŒãèšèšã»å®è£ ããéã«åŸãã¹ããã¹ããã©ã¯ãã£ã¹ã以äžã«ç€ºããŸãïŒ
- ã»ãã³ãã£ãã¯HTMLããå§ãã: ã»ãã³ãã£ãã¯ãªHTMLèŠçŽ ïŒäŸïŒ
<ul>
,<li>
ïŒã䜿çšããŠãããªãŒãã¥ãŒã®åºæ¬æ§é ãäœæããŸãã - ARIAããŒã«ãšå±æ§ãé©çšãã: ARIAããŒã«ãšå±æ§ã䜿çšããŠãæå³çãªæå³ã远å ããæ¯æŽæè¡ã«æ å ±ãæäŸããŸãã
- å ç¢ãªããŒããŒãããã²ãŒã·ã§ã³ãå®è£ ãã: ããªãŒãã¥ãŒãããŒããŒãã®ã¿ã§å®å šã«æäœå¯èœã§ããããšãä¿èšŒããŸãã
- æç¢ºãªèŠèŠçæããããæäŸãã: ããžã¥ã¢ã«ãã¶ã€ã³ã䜿çšããŠãããªãŒãã¥ãŒã®éå±€ãç¶æ ããã©ãŒã«ã¹ãæç¢ºã«ç€ºããŸãã
- ã¹ã¯ãªãŒã³ãªãŒããŒã§ãã¹ããã: è€æ°ã®ã¹ã¯ãªãŒã³ãªãŒããŒã§ããªãŒãã¥ãŒããã¹ãããã¹ã¯ãªãŒã³ãªãŒããŒãŠãŒã¶ãŒã«ãšã£ãŠã¢ã¯ã»ã¹å¯èœã§ããããšã確èªããŸãã
- WCAGæºæ ãæ€èšŒãã: WCAGã¬ã€ãã©ã€ã³ã«å¯ŸããŠããªãŒãã¥ãŒãæ€èšŒããã¢ã¯ã»ã·ããªãã£åºæºãæºãããŠããããšã確èªããŸãã
- ã³ãŒããææžåãã: åARIA屿§ãšããŒããŒãã€ãã³ããã³ãã©ã®ç®çã説æããã³ãŒããæç¢ºã«ææžåããŸãã
- ã©ã€ãã©ãªããã¬ãŒã ã¯ãŒã¯ã䜿çšããïŒæ³šæããŠïŒ: ä¿¡é Œã§ããUIã©ã€ãã©ãªããã¬ãŒã ã¯ãŒã¯ããæäŸãããŠããæ§ç¯æžã¿ã®ããªãŒãã¥ãŒã³ã³ããŒãã³ãã®äœ¿çšãæ€èšããŠãã ããããã ããã³ã³ããŒãã³ãã®ã¢ã¯ã»ã·ããªãã£æ©èœãæ³šææ·±ãã¬ãã¥ãŒããèŠä»¶ãæºãããŠããããšã確èªããŠãã ãããåžžã«åŸ¹åºçã«ãã¹ãããŠãã ããïŒ
é«åºŠãªèæ ®äºé
- é å»¶èªã¿èŸŒã¿ (Lazy Loading): éåžžã«å€§ããªããªãŒã®å ŽåãããŒããå¿ èŠã«ãªã£ããšãã«ã®ã¿èªã¿èŸŒãé å»¶èªã¿èŸŒã¿ãå®è£ ããŸããããã«ãããããã©ãŒãã³ã¹ãåäžããåæèªã¿èŸŒã¿æéãççž®ãããŸããé å»¶èªã¿èŸŒã¿ãã¢ã¯ã»ã·ãã«ãªæ¹æ³ã§å®è£ ãããããŒããèªã¿èŸŒãŸããŠããéããŠãŒã¶ãŒã«é©åãªãã£ãŒãããã¯ãæäŸãããããã«ããŠãã ãããARIAã©ã€ããªãŒãžã§ã³ã䜿çšããŠèªã¿èŸŒã¿ã¹ããŒã¿ã¹ãéç¥ããŸãã
- ãã©ãã°ïŒãããã: ããªãŒãã¥ãŒããã©ãã°ïŒããããæ©èœããµããŒãããŠããå ŽåããããããŒããŒããŠãŒã¶ãŒãã¹ã¯ãªãŒã³ãªãŒããŒãŠãŒã¶ãŒã«ãšã£ãŠãã¢ã¯ã»ã¹å¯èœã§ããããšã確èªããŠãã ãããããŒãããã©ãã°ïŒããããããããã®ä»£æ¿ããŒããŒãã³ãã³ããæäŸããŸãã
- ã³ã³ããã¹ãã¡ãã¥ãŒ: ããªãŒãã¥ãŒã«ã³ã³ããã¹ãã¡ãã¥ãŒãå«ãŸããŠããå ŽåãããããããŒããŒããŠãŒã¶ãŒãã¹ã¯ãªãŒã³ãªãŒããŒãŠãŒã¶ãŒã«ãšã£ãŠã¢ã¯ã»ã¹å¯èœã§ããããšã確èªããŠãã ãããARIA屿§ã䜿çšããŠã³ã³ããã¹ãã¡ãã¥ãŒãšãã®ãªãã·ã§ã³ãèå¥ããŸãã
- ã°ããŒããªãŒãŒã·ã§ã³ãšããŒã«ãªãŒãŒã·ã§ã³: ç°ãªãèšèªãæåã«åãããŠç°¡åã«ããŒã«ã©ã€ãºã§ããããã«ããªãŒãã¥ãŒãèšèšããŸããç°ãªãããã¹ãæ¹åïŒäŸïŒå³ããå·ŠïŒãèŠèŠçãªã¬ã€ã¢ãŠããããŒããŒãããã²ãŒã·ã§ã³ã«äžãã圱é¿ãèæ ®ããŠãã ããã
çµè«
ã¢ã¯ã»ã·ãã«ãªããªãŒãã¥ãŒãäœæããã«ã¯ãæ éãªèšç»ãšå®è£ ãå¿ èŠã§ãããã®èšäºã§æŠèª¬ããã¬ã€ãã©ã€ã³ã«åŸãããšã§ãé害ãæã€ãŠãŒã¶ãŒãå«ããã¹ãŠã®ãŠãŒã¶ãŒãããªãŒãã¥ãŒã䜿çšããã¢ã¯ã»ã¹ã§ããããã«ããããšãã§ããŸããã¢ã¯ã»ã·ããªãã£ã¯åãªãæè¡çãªèŠä»¶ã§ã¯ãªããã€ã³ã¯ã«ãŒã·ããã¶ã€ã³ã®åºæ¬ååã§ããããšãå¿ããªãã§ãã ããã
ã¢ã¯ã»ã·ããªãã£ãåªå ããããšã§ãèœåã«é¢ä¿ãªãããã¹ãŠã®ãŠãŒã¶ãŒã«ãšã£ãŠããè¯ããŠãŒã¶ãŒäœéšãåµåºã§ããŸããã³ãŒãã宿çã«ãã¹ãã»æ€èšŒããããšãéèŠã§ããææ°ã®ã¢ã¯ã»ã·ããªãã£æšæºãšãã¹ããã©ã¯ãã£ã¹ãåžžã«ææ¡ããçã«ã€ã³ã¯ã«ãŒã·ããªãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ãäœæããŠãã ããã